package com.ithiema.read;

import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.read.listener.PageReadListener;
import com.alibaba.excel.read.metadata.ReadSheet;
import com.ithiema.EmployeeListener.EmployeeListener;
import com.ithiema.dao.EmployeeDao;
import com.ithiema.pojo.Employee;
import com.ithiema.utils.TestFileUtil;
import org.junit.Test;

/*
    自定义监听器,读海量数据
 */
/**
 * ManyRead类用于演示Excel文件的读取操作
 */
public class ManyRead {
    /**
     * read方法用于读取指定的Excel文件并解析其中的数据
     * 该方法通过EasyExcel框架读取Excel文件，使用Employee类作为数据模型，
     * 并通过EmployeeListener监听器处理读取到的数据，最终将数据保存到数据库中
     */
    @Test
    public void read(){
        // 构建Excel文件路径
        String fileName = TestFileUtil.getPath()+"listFill1759478988664.xlsx";

        // 创建Excel读取器，指定数据模型类和数据监听器
        ExcelReader reader = EasyExcel.read(fileName, Employee.class, new EmployeeListener(new EmployeeDao())).build();

        // 构建读取工作表对象
        ReadSheet sheet = EasyExcel.readSheet().build();

        // 执行Excel文件读取操作
        reader.read(sheet);
    }
}

